﻿// swwu 2009-08-16

$(document).ready(function(){
	$('#tabs').tabs().bind('tabsshow', function(event, ui) {
		if(ui.tab.hash == '#newsDetail')
			p.syncEdit();
	});
});

function signInWithGoogle() {
	authDwr.signInWithGoogle(function(url){
		window.open(url);
	});
}
function openPoster() {
	$('#poster_info').replaceWith('<li><label>投递人</label><input name="poster" type="text" /></li><li><label>投递人链接</label><input name="posterLink" type="text" /></li>');
}
var p = {
	postNews: function() {
		var news = {};
		news.subject = $.trim($('input[name=subject]').val());
		news.imageUrl = $.trim($('input[name=imageUrl]').val());
		news.content = $.trim($('textarea[name=content]').val());
		news.srcLinkUrl = $.trim($('input[name=srcLinkUrl]').val());
		news.poster = $.trim($('input[name=poster]').val());
		news.posterLink = $.trim($('input[name=posterLink]').val());
		if(!news.subject) {
			alert('一定要填写标题');
			return;
		} else if(news.subject.length > 20) {
			alert('标题长度请小于20个字');
			return;
		} else if(!news.content) {
			alert('请填写内容');
			return;
		} else if(news.content.length > 1000) {
			alert('内容长度请小于1000个字');
			return;
		} else if(news.imageUrl > 300) {
			alert('图片地址太长了吧？');
			return;
		} else if(news.srcLinkUrl > 300) {
			alert('来源地址太长了吧？');
			return;
		} else if(news.poster > 16) {
			alert('投递人名字太长了吧？');
			return;
		} else if(news.posterLink > 300) {
			alert('投递人地址太长了吧？');
			return;
		}
		if(!news.content.match('^<[pP]>[\\s+\\S+]*</[pP]>$'))
			news.content = '<p>'+ news.content +'</p>';
		
		$('input[type=button]').attr('disabled', true);
		newsDwr.postNews(news, function(msg) {
			$('input[type=button]').replaceWith('<div id="info" class="ui-state-highlight"><span class="ui-icon ui-icon-info"/>已经提交，谢谢参与</div>');
		});
	},
	syncEdit: function() {
		var n = {};
		n.subject = $.trim($('input[name=subject]').val());
		n.imageUrl = $.trim($('input[name=imageUrl]').val());
		n.content = $.trim($('textarea[name=content]').val());
		n.srcLinkUrl = $.trim($('input[name=srcLinkUrl]').val());
		n.poster = $.trim($('input[name=poster]').val());
		n.posterLink = $.trim($('input[name=posterLink]').val());
		
		if(!n.content.match('^<[pP]>[\\s+\\S+]*</[pP]>$'))
			n.content = '<p>'+ n.content +'</p>';
		
		n.createTime = new Date();
		this.render(n);
	},
	render: function(ne) {
		var html = '<div><input type="button" value="投递" onclick="p.postNews()"/></div>';
		html += '<h2 class="time">'+ ne.createTime +'</h2>';
		if(ne.subject)
			html += '<h1 class="subject">'+ ne.subject +'</h1>';
		if(ne.imageUrl)
			html += '<img src="'+ ne.imageUrl +'"/>';
		if(ne.content)
			html += ne.content;
		html += '<div class="bottom-info clear"><ul>';
		if(ne.srcLinkUrl)
			html += '<li><a target="_blank" href="'+ ne.srcLinkUrl +'">来源</a></li>';
		if(ne.poster) {
			html += '<li>投稿人: <@poster></li>'
				.replace(/<@poster>/, ne.posterLink ? '<a href="'+ ne.posterLink +'">'+ ne.poster +'</a>' : ne.poster);
		}
		html += '</ul><div class="clear"></div></div>';
		html += '<div><input type="button" value="投递" onclick="p.postNews()"/></div>';
		
		$('#newsDetail').html(html);
	}
};